-
Notifications
You must be signed in to change notification settings - Fork 134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Supports iOS 18+ runtime downloads #391
Supports iOS 18+ runtime downloads #391
Conversation
|
||
|
||
private extension Progress { | ||
func updateFromXcodebuild(text: String) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Taken directly from the other PR
return AsyncThrowingStream<Progress, Swift.Error> { continuation in | ||
Task { | ||
// Assume progress will not have data races, so we manually opt-out isolation checks. | ||
let progress = Progress() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
More or less verbatim from the other PR
@MattKiazyk guessing you’re busy with other work stuff, just wanted to bump this in case it got lost in the shuffle. Let me know if there’s anything else I can do |
@spadafiva sorry was trying to get login back up and working first. I'll look at this right away. Ok if I make any changes to your PR needed and just merge? |
Sounds great! Thanks! Also, if there's anything I can to do help with the login stuff, would love to help out if I can. |
PR #393 is up that includes it, if you'd like to test. |
Also, @MattKiazyk, just in case it's not clear, thanks so much for maintaining the very useful tool. Me (and the the rest of the team) definitely appreciate how useful it is and the hard work you've put into maintaining it. |
@MattKiazyk could you add documentation on how to download runtimes, I am trying to automated a CLI pipeline and I want to download runtimes first before installing it when I try this I get
why does it need to check if xcode installed first, I am just trying to download the package, otherwise I would have used install command |
iOS 18.1 can't be ** just downloaded ** since it relies on the built in xcodebuild command now due to the changes on apple's side. So you can only |
To clarify - Xcodes currently only wraps the install command of There is a |
This PR attempts to port the logic from XcodesOrg/XcodesApp#622 to the CLI tool.
Fixes #384
The logic in the
downloadAndInstallRuntime
was modified to now switch over the runtime's content type. The previous existing package and disk image installs were left unchanged, but the.cryptexDiskImage
case is now handled by thedownloadAndInstallUsingXcodeBuild
function.This function does 3 main things (broken into some smaller helper functions for those).
Testing:
In order to test this out you will need to have xcode 16.1 or newer installed.
Things I tested and seemed to work for me:
Caveats:
I'm not sure what happens to the underlying xcodebuild install process if you cancel the command from the terminal with CMD+C.
When the selected runtime is already installed, the tool will still go through the download process but complete quickly:
It might be worth following up in a future PR to check if the runtime is actually already installed instead of doing this.